let fs = require('then-fs');

let p1 = fs.readFile('./files/a.txt', 'utf-8');  // 
let p2 = fs.readFile('./files/bbb.txt', 'utf-8');
let p3 = fs.readFile('./files/c.txt', 'utf-8');

// // ----------------------  通过 then 获取结果       ----------------------------
// p1.then(res => {
//   console.log(res.length);
//   return p2;
// }).then(res => {
//   console.log(res.length);
//   return p3;
// }).then(res => {
//   console.log(res.length);
// }).catch(err => {
//   console.log(err);
// })


// ---------------------- 通过 async/await 获取结果 ----------------------------
async function abc() {
  try { // 尝试做一些事情
    let r1 = await p1; // 正常得到结果
    let r2 = await p2; // 这里出错了，就会抛出错误 throw err。
    let r3 = await p3;
    console.log(r1.length, r2.length, r3.length);
  } catch (e) {
    console.log(e); // catch这里，会抓住前面try里面抛出的错误
  }
}
abc();